package service;


import bean.CutPageBean;
import bean.UserBean;

import java.util.List;

public interface IUserService {
    /**
     * 登录
     *
     * @param userName 用户账号
     * @param password 用户密码
     * @return 登录用户对象，如果登录失败返回空值
     */
    UserBean login(String userName, String password);

    /**
     * 分页查询所有用户
     *
     * @param pageNo 页码
     * @return
     */
    CutPageBean<UserBean> cutAll(int pageNo);

    /**
     * 添加用户
     *
     * @param user 用户对象
     * @return 如果用户名 在数据库表中已存在，不允许添加，返回false
     * 如果用户名不存在，则允许添加，返回true
     */
    boolean add(UserBean user);


    /**
     * 删除用户
     *
     * @param userId 用户编号
     */
    void delete(int userId);

    /**
     * 修改用户等级
     * 如果修改的等级和原等级相同，则返回false
     *
     * @param userId
     * @param newGrade
     * @return
     */
    boolean update(Integer userId, String newGrade);

    /**
     * 按id查找用户
     *
     * @param userId 用户编号
     * @return
     */
    UserBean findById(int userId);

    /**
     * 修改密码
     *
     * @param userId 用户编号
     * @param newPwd 新密码
     * @param surePwd 确认密码
     * @return 如果新密码与原密码相同的话，返回false
     * 如果新密码和确认密码相同的话，也返回false
     */
    public boolean changePwd(Integer userId, String newPwd, String surePwd);

}
